Micron Document
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| SparkN0de-git | SparkN0de |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


vendor/rns_filesync/packaging/docker-test/run-all.sh dev (96b397dc) Text, 2.40 KB

T8b949e#!/bin/sh
T8b949e# Build wheels and run packaging service tests in appropriate OS images.
Tffa657set -eu
Te6edf3ROOTTff7b72=Ta5d6ff"Tff7b72$(Te6edf3CDPATHTff7b72= Tffa657cd -- Ta5d6ff"Tff7b72$(dirname Ta5d6ff"Te6edf3$0Ta5d6ff"Tff7b72)Ta5d6ff/../..Ta5d6ff" Tff7b72&& Tffa657pwdTff7b72)Ta5d6ff"
Tffa657cd Ta5d6ff"Te6edf3$ROOTTa5d6ff"

Te6edf3IMG_RUNITTff7b72=Ta5d6ff"Tffd700${Te6edf3IMG_RUNITTff7b72:-Te6edf3ghcrTb4b4b4.io/void-linux/void-glibc-fullTb4b4b4:Te6edf320240526R1Tffd700}Ta5d6ff"

Tffa657echo Ta5d6ff"==> bake wheel"
mkdir -p dist
make wheel
Te6edf3WHEELTff7b72=Ta5d6ff"Tff7b72$(ls -1 dist/rns_filesync-*.whl Tb4b4b4| head -n1Tff7b72)Ta5d6ff"
Tffa657test -n Ta5d6ff"Te6edf3$WHEELTa5d6ff"
Tffa657echo Ta5d6ff"Ta5d6ffwheel=Te6edf3$WHEELTa5d6ff"

run_namedTff7b72(Tff7b72) Tff7b72{
Te6edf3nameTff7b72=Ta5d6ff"Te6edf3$1Ta5d6ff"
Te6edf3dockerfileTff7b72=Ta5d6ff"Te6edf3$2Ta5d6ff"
Te6edf3base_hintTff7b72=Ta5d6ff"Te6edf3$3Ta5d6ff"
Te6edf3testscriptTff7b72=Ta5d6ff"Te6edf3$4Ta5d6ff"
Tffa657echo Ta5d6ff""
Tffa657echo Ta5d6ff"Ta5d6ff======== TEST Te6edf3$nameTa5d6ff (Te6edf3$base_hintTa5d6ff) ========Ta5d6ff"
docker build -f Ta5d6ff"Ta5d6ffpackaging/docker-test/Te6edf3$dockerfileTa5d6ff" Tffea00\
-t Ta5d6ff"Ta5d6ffrns-filesync-svc-Te6edf3$nameTa5d6ff" Tffea00\
packaging/docker-test
docker run --rm Tffea00\
-v Ta5d6ff"Te6edf3$ROOTTa5d6ff/packaging:/packaging:roTa5d6ff" Tffea00\
-v Ta5d6ff"Te6edf3$ROOTTa5d6ff/packaging/docker-test:/test:roTa5d6ff" Tffea00\
-v Ta5d6ff"Te6edf3$ROOTTa5d6ff/dist:/wheels:roTa5d6ff" Tffea00\
Ta5d6ff"Ta5d6ffrns-filesync-svc-Te6edf3$nameTa5d6ff" Tffea00\
/bin/sh /test/Ta5d6ff"Te6edf3$testscriptTa5d6ff"
Tff7b72}

Tffa657echo Ta5d6ff""
Tffa657echo Ta5d6ff"======== TEST systemd (debian bookworm + systemd) ========"
docker build -f packaging/docker-test/Dockerfile.systemd Tffea00\
-t rns-filesync-svc-systemd packaging/docker-test

Te6edf3cidTff7b72=Ta5d6ff"Tff7b72$(docker run -d --privileged --cgroupnsTff7b72=host Tffea00\
-v /sys/fs/cgroup:/sys/fs/cgroup:rw Tffea00\
-v Ta5d6ff"Te6edf3$ROOTTa5d6ff/packaging:/packaging:roTa5d6ff" Tffea00\
-v Ta5d6ff"Te6edf3$ROOTTa5d6ff/packaging/docker-test:/test:roTa5d6ff" Tffea00\
-v Ta5d6ff"Te6edf3$ROOTTa5d6ff/dist:/wheels:roTa5d6ff" Tffea00\
rns-filesync-svc-systemdTff7b72)Ta5d6ff"
cleanup_systemdTff7b72(Tff7b72) Tff7b72{
docker rm -f Ta5d6ff"Te6edf3$cidTa5d6ff" >/dev/null T79c0ff2>Tb4b4b4&T79c0ff1 Tff7b72|| Tffa657true
Tff7b72}
Tffa657trap cleanup_systemd EXIT
Te6edf3iTff7b72=T79c0ff0
Tff7b72while Tff7b72[ Ta5d6ff"Te6edf3$iTa5d6ff" -lt T79c0ff40 Tff7b72]Tb4b4b4; Tff7b72do
Tff7b72if docker Tffa657exec Ta5d6ff"Te6edf3$cidTa5d6ff" systemctl list-units >/dev/null T79c0ff2>Tb4b4b4&T79c0ff1Tb4b4b4; Tff7b72then
Tff7b72break
Tff7b72fi
Te6edf3iTff7b72=Tff7b72$((Te6edf3i Tff7b72+ T79c0ff1Tff7b72))
sleep T79c0ff1
Tff7b72done
docker Tffa657exec Ta5d6ff"Te6edf3$cidTa5d6ff" /bin/sh /test/test-systemd.sh
cleanup_systemd
Tffa657trap - EXIT
Tffa657echo Ta5d6ff"PASS: systemd outer"

run_named openrc Dockerfile.openrc Ta5d6ff"alpine:3.21 + openrc" test-openrc.sh
run_named dinit Dockerfile.dinit Ta5d6ff"debian:bookworm (dinit service file)" test-dinit.sh

Tffa657echo Ta5d6ff""
Tffa657echo Ta5d6ff"======== TEST runit ========"
Tff7b72if docker pull Ta5d6ff"Te6edf3$IMG_RUNITTa5d6ff" >/dev/null T79c0ff2>Tb4b4b4&T79c0ff1 Tffea00\
Tff7b72&& docker build -f packaging/docker-test/Dockerfile.runit Tffea00\
-t rns-filesync-svc-runit packaging/docker-testTb4b4b4; Tff7b72then
Tffa657echo Ta5d6ff"using Void Linux runit image"
Tff7b72else
Tffa657echo Ta5d6ff"using Alpine runit fallback"
docker build -f packaging/docker-test/Dockerfile.runit-alpine Tffea00\
-t rns-filesync-svc-runit packaging/docker-test
Tff7b72fi
docker run --rm Tffea00\
-v Ta5d6ff"Te6edf3$ROOTTa5d6ff/packaging:/packaging:roTa5d6ff" Tffea00\
-v Ta5d6ff"Te6edf3$ROOTTa5d6ff/packaging/docker-test:/test:roTa5d6ff" Tffea00\
-v Ta5d6ff"Te6edf3$ROOTTa5d6ff/dist:/wheels:roTa5d6ff" Tffea00\
rns-filesync-svc-runit Tffea00\
/bin/sh /test/test-runit.sh

Tffa657echo Ta5d6ff""
Tffa657echo Ta5d6ff"ALL SERVICE TESTS PASSED"


──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────